package com.yitong.base.dao.api;

import java.util.List;

import javax.sql.DataSource;

import com.yitong.base.domain.Page;
import com.yitong.base.exception.DaoException;

public interface ReadDao {
	public abstract Object load(String paramString, Object paramObject) throws DaoException;
                                                             
	public abstract List<?> find(String paramString, Object paramObject) throws DaoException;

	public abstract List<?> find(String paramString, Object paramObject, int star, int end) throws DaoException;

	public abstract boolean exists(String paramString, Object paramObject) throws DaoException;

	public abstract long count(String paramString, Object paramObject) throws DaoException;

	public abstract String getNameSpace(Object paramObject) throws DaoException;

	public abstract DataSource getDataSource() throws DaoException;

	public abstract Page<?> findPage(String string, String sqlCount, Object param, int pageNum, int pageSize);

	public abstract Page<?> findPage1(String string, String sqlCount, Object param, int pageNum, int pageSize);
	
	@SuppressWarnings("rawtypes")
	public abstract List listPage(String sql,String sqlCount, Object  param,int pageNum,int pageSize);
	
	@SuppressWarnings("rawtypes")
	public abstract Page findPage2(String string,String sqlCount, Object  param,int pageNum,int pageSize);

}
